var reques = require('utils/util.js');
//app.js
App({
  globalData: {
    code: null,
    encryptedData: null,
    iv: null,
    userInfo: null,
    sessionId: null,
    infoId: null,
    logged: false,
    result: null,
    accountINFO: null,
    URL: 'http://192.168.1.40/',
    // URL: 'https://51qxtx.com/',
  },
  onLaunch: function () {
    // 展示本地存储能力
    var logs = wx.getStorageSync('logs') || []
    logs.unshift(Date.now())
    wx.setStorageSync('logs', logs)

    // 登录
    wx.login({
      success: res => {
        this.globalData.code = res.code;
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
      }
    })
    // 获取用户信息
    wx.getSetting({
      success: res => {
        if (res.authSetting['scope.userInfo']) {
          console.log("授权了")
          // 已经授权，可以直接调用 getUserInfo 获取头像昵称，不会弹框
          wx.getUserInfo({
            success: res => {
              getApp().globalData.encryptedData = res.encryptedData;
              getApp().globalData.iv = res.iv;
              // 可以将 res 发送给后台解码出 unionId
              getApp().globalData.userInfo = res.userInfo

              // 登陆判断
              var url = getApp().globalData.URL + 'free/weChatUserInfo';
              var para = {
                code: getApp().globalData.code,
                encryptedData: getApp().globalData.encryptedData,
                iv: getApp().globalData.iv,
                type: "MINI",
              }
              reques.gethttp(url, para)
                .then((res) => {
                  if (res.data.code == 1) {
                    // 登陆成功的登陆凭证
                    getApp().globalData.sessionId = res.data.data
                    // 个人中心样式切换为已登陆版本
                    getApp().globalData.logged = true;
                  } else if (res.data.code == 2) {
                    // 首次登陆成功的第三方信息凭证
                    getApp().globalData.infoId = res.data.data;
                  } else {
                    console.log("登陆失败")
                  }
                })
                .catch((errMsg) => {
                  console.log(errMsg);
                })

              // 由于 getUserInfo 是网络请求，可能会在 Page.onLoad 之后才返回
              // 所以此处加入 callback 以防止这种情况
              if (this.userInfoReadyCallback) {
                this.userInfoReadyCallback(res)
              }
            }
          })
        }else{
          console.log("没有授权往授权页跳了");
          wx.redirectTo({
            url: '../login/login',
          })
        }
      }
    })
  },
})